User loginNavigation |
Technometria: AJAX Progress and ChallengesPhil Windley interviews Ben Galbraith, Bruce Grant, and Scott C. Lemon. This is an audio show, around an hour in length, and since the topic isn't directly programming language related, I was not sure if I should post the link here. Still, we have been fairly quiet recently, and this show suggests some project ideas that may interest language hackers, so you might want to listen in. Among the ideas I spotted are: JIT for Javascript, better debugging support for Javascript (possibly via an open standard for getting debug information from the javascript engine) and better ways to handle failure in web services orchestration. This is related to previous discussions of what might be called the Web 2.0 programming model. See, for example, the discussion of the Google Web Toolkit, my suggestions about a google DSL here , Microsoft Atlas, and the various discussions about Ruby on Rails. Closures for Java or money backJoel Spolsky in Can Your Programming Language Do This? (Aug 1, 2006): Java required you to create a whole object with a single method called a functor if you wanted to treat a function like a first class object. Combine that with the fact that many OO languages want you to create a whole file for each class, and it gets really klunky fast. If your programming language requires you to use functors, you're not getting all the benefits of a modern programming environment. See if you can get some of your money back. Bracha, Gafter, Gosling, and Ahé in Closures for Java (Aug 18, 2006): Modern programming languages provide a mixture of primitives for composing programs. C#, Javascript, Ruby, Scala, and Smalltalk (to name just a few) have direct language support for function types and inline function-valued expression, called closures. A proposal for closures is working its way through the C++ standards committees as well. Function types provide a natural way to express some kinds of abstraction that are currently quite awkward to express in Java. For programming in the small, closures allow one to abstract an algorithm over a piece of code; that is, they allow one to more easily extract the common parts of two almost-identical pieces of code. For programming in the large, closures support APIs that express an algorithm abstracted over some computational aspect of the algorithm. We propose to add function types and closures to Java. We anticipate that the additional expressiveness of the language will simplify the use of existing APIs and enable new kinds of APIs that are currently too awkward to express using the best current idiom: interfaces and anonymous classes. LASER SummerschoolAs far as I know the LASER Summerschool has not been mentioned on LTU yet. We have a fine lineup of speakers, including Miguel de Icaza(who gave a great presentation at the Lang .NET symposium), Andreas Zeller whose book on debugging is an instant classic, Mary Poppendieck whose presentations were the highlight of last year's JAOO, Ralf Back who as usual will ensure sound foundations, and of course Bertrand Meyer who needs no introduction! Registration is open until August 31. I hope to see many of you in person on Elba. By Erik Meijer at 2006-08-19 00:02 | Teaching & Learning | login or register to post comments | other blogs | 7006 reads
Decomposing lambda - the Kernel language
The Kernel Programming Language, by John N. Shutt:
Via Shriram Krishnamurthi on c.l.scheme. The story title is from an older paper on Kernel. Early retirement?Are all the editors on vacation, or is this a case of mass early retirement? It has been awhile since we had a decent curry-howard story, but at this point I am sure any good link you have lying around is going to be appreciated. Lisp Machine Manual
A 1984 document by Richard Stallman, Daniel Weinreb and David Moon. The preface contains a "personal note" from Stallman announcing GNU. Some sections of interest are: cdr coding, closure manipulation functions, stack groups, and areas. Programming Languages in the Markup WorldThe Extreme Markup 2006 conference has finished and the proceedings are up. If you have any interest in the intersection of programming and markup languages, there were a few papers worth looking at. Here's my choice:
Revisiting Google's MapReduceGoogle's MapReduce Programming Model -- Revisited. Ralf Lämmel.
This is a fun example of type-directed exploration and prototyping, and pokes some gentle fun of Google's (ab)use of standard terminology. It's neat to get a glimpse into the programming process of a very experienced Haskell programmer. (From the forums.) By Matt Hellige at 2006-08-09 21:18 | Fun | Functional | Software Engineering | 7 comments | other blogs | 22533 reads
Comonadic Functional Attribute EvaluationComonadic Functional Attribute Evaluation. Tarmo Uustalu and Varmo Vene.
(This is an extended abstract. I believe a longer version is here, but I haven't read it.) We've previously seen The Essence of Dataflow Programming, and in one sense this is a follow-up. Applying comonads to dataflow programming was not uncritically accepted as being "essential," as I recall. For attribute grammars, this approach seems elegant enough from a casual read, but they don't offer a detailed comparison with prior work on attribute grammars, and I'm nowhere near familiar enough to judge for myself. Whether or not this is a significant step forward in that sense, it certainly has some nice examples of comonads. There's also this claim:
(Emphasis mine.) This seems to be a relatively well-known fact about zippers, but perhaps not? CellML
An interesting XML based DSL, with a strong visual programming layer. I don't think we mentioned it in the past, and I'll be happy to hear what people here think of it. For the recored, I am speaking at the annual conference of the open source community here in Israel, this Friday. My talk is about e-learning, and cellML is one of the examples I am going to discuss. |
Browse archives
Active forum topics |
Recent comments
2 weeks 3 days ago
2 weeks 4 days ago
2 weeks 5 days ago
2 weeks 5 days ago
3 weeks 3 days ago
3 weeks 3 days ago
3 weeks 3 days ago
6 weeks 4 days ago
7 weeks 2 days ago
7 weeks 2 days ago